// index.js
const net=require("../../utils/request.js")
const custom=require("../../utils/index.js")
// const { getEvents } = require("../../utils/index.js")
// 获取应用实例
const app = getApp()

Page({
  data: {
    motto: 'Hello World',
    userInfo: {},
    hasUserInfo: false,
    canIUse: wx.canIUse('button.open-type.getUserInfo'),
    canIUseGetUserProfile: false,
    canIUseOpenData: wx.canIUse('open-data.type.userAvatarUrl') && wx.canIUse('open-data.type.userNickName'), // 如需尝试获取用户信息可改为false
    timer:`1天24小时60分钟60秒`,
    imgPart1:[],//区域1的图
    visitList:[//围观用户信息
    ],
    partakeList:[//参与者列表
      {
        nickName:'阿怪',
        avatar:'../../assets/avatar.png',
        content:"参与了活动",
        createdAt:'2022-08-05 12:45',
        payNum:105
      }
    ],
    video_src:'',
    baseInfo:{},
    mask_show:false,
    price:"",
    day:0,
    hour:0,
    minute:0,
    second:0,
    //店铺相关
    stores:[
    ],
    stores_index:0,
    current_store_id:0,
    store_info:{},
    isLogin:false,//是否登录
    login_show:false,//登录遮罩层
    goods_info:{}, // 商品信息
    invite_code:'',
    is_buy:-1,
  },
  // 获取门店列表
  async getStoreList(){
    const res = await custom.getStoreList()
    if(res.code == 200){
      console.log(res)
      this.setData({
        stores:res.data.records,
        current_store_id:res.data.records[0].id,
        "baseInfo.store_img":res.data.records[0].headImg.split("|"),
      })
      console.log(this.data.baseInfo.store_img);
      // 获取店铺详情
      // this.getStoreInfo()
      //获取活动详情
      this.getEvents()
    }
  },
  async getStoreInfo(){ // 获取店铺详情
    const res = await custom.getStoreInfo(this.data.current_store_id)
    if(res.code == 200) {
      this.setData({
        // stores:res.data.store,
        // current_store_id:res.data.store.id,
        "baseInfo.store_img":res.data.store.headImg.split("|"),
      })
       //获取活动详情
       this.getEvents()
    }
  },
  // 根据店铺id获取活动
  async getEvents(){
    const userId = wx.getStorageSync('userId')
    const _this = this;
    const params = {
      storeId:this.data.current_store_id
    }
    if(userId) {
      params.userId = userId
    }
    const res = await custom.getEvents(params)
    if(res.code == 200) {
      console.log(res);
      if(res.data){
        this.setData({
          "baseInfo.activity_imgs":res.data.masterImg.split(","),
          "baseInfo.headImg":res.data.headImg.split(","),
          "baseInfo.notice":res.data.notice.split(","),
          "baseInfo.descImg":res.data.descImg.split(","),
          video_src:res.data.video,
          price:(parseFloat(res.data.coupon_price)/100).toFixed(2),
          // price:res.data.price,
          goods_info:res.data,
          is_buy:res.data.is_buy
        })
        console.log(this.data.baseInfo.headImg)
        // wx.setStorageSync('price',this.data.price);//price 存入缓存
        //活动时间倒计时
        if(res.data.end_time){
          var end_time = res.data.end_time
          var arr  = end_time.split("-")
          let [year,month,day] = arr
          let hour = 24
          setInterval(function(){
            var timer=_this.CountDown(year, month, day, hour);
            _this.setData({
              timer
            })
          },1000)
        }
        
      }
      // //梳理数据（图片）
      // if(res.data.headImg)res.data.headImg=res.data.headImg.split(",")//头部图片
      // // if(res.data.descImg)res.data.descImg=res.data.descImg.split(",")//活动详情图
      // if(res.data.masterImg)res.data.masterImg=res.data.masterImg.split(",")//活动主图
      // if(res.data.notice)res.data.notice=res.data.notice.split(",")//活动须知
      // _this.setData({
      //   baseInfo:res.data,
      //   video_src:res.data.video
      // })
      // console.log(_this.data.baseInfo);
      // wx.setStorageSync('price', res.data.price);//price 存入缓存
    }
  },
  bindPickerChange(e){ // 选择门店
    // this.data.current_store_id
    this.setData({
      current_store_id:this.data.stores[parseInt(e.detail.value)].id,
      stores_index:parseInt(e.detail.value),
      baseInfo:{},
      price:0
    })
    this.getStoreInfo()
  },
  toStore(){ // 进入店铺
    wx.navigateTo({
      url: "../views/store/store/index?store_id="+this.data.current_store_id
    })
  },
  CountDown(year, month, day, hours){//时间差
    let now = new Date();
    let endDate = new Date(year, month - 1, day, hours);
    let leftTime = endDate.getTime() - now.getTime();//计算剩余的毫秒数
    if (leftTime <= 0) {
        leftTime = 0;
    }
    let leftsecond = parseInt(leftTime / 1000);//计算剩余的秒数
     day = Math.floor(leftsecond / (60 * 60 * 24));
    let hour = Math.floor((leftsecond - day * 24 * 60 * 60) / 3600);
    let minute = Math.floor((leftsecond - day * 24 * 60 * 60 - hour * 3600) / 60);
    let second = Math.floor(leftTime / 1000 % 60, 10);
    this.setData({
      day,
      hour,
      minute,
      second
    })
    return `${day}天${hour}小时${minute}分钟${second}秒`;
  },
  // 事件处理函数
  bindViewTap() {
    wx.navigateTo({
      url: '../logs/logs'
    })
  },
  onLoad(option) {
    // this.share()
    console.log(option);
    if(option.from_userId) { // 从别人的分享链接进来的
      // wx.setStorageSync('invite_code', option.from_userId)
      // this.setData({
      //   invite_code:option.from_userId
      // })
      app.globalData.invite_code = option.from_userId
    }
    //检查是否登录
    // var isLogin = custom.checkLogin();//检查登录状态
    // this.setData({
    //   isLogin
    // })
    var _this=this;
    this.setData({
      price:wx.getStorageSync("price")
    })
    //获取门店
    this.getStoreList()
    // return
    //参与者轮播 测试
    // 获取参与者
    this.getPartakeList()
    // let i=0;
    // var partakeList=this.data.partakeList;
    // var visitList=this.data.visitList
    // while(i<10){
    //   let obj={
    //     nickName:'阿怪'+i,
    //     avatar:'../../assets/avatar.png',
    //     content:"参与了活动",
    //     createdAt:'2022-08-05 12:45',
    //     payNum:105
    //   }
    //   partakeList.push(obj)
    //   visitList.push(obj)
    //   i++
    // }
    // this.setData({
    //   partakeList,
    //   visitList
    // })
    //初始代码
    // if (wx.getUserProfile) {
    //   this.setData({
    //     canIUseGetUserProfile: true
    //   })
    // }
  },
  async getPartakeList(){ // 获取参与者
    const res = await custom.getPartakeList();
    if(res.code == 200) {
      console.log(res);
      var visitList = []
      if(res.data){
        visitList = res.data.map((item,i) => {
          return {
            avatar:item.avatar
          }
        })
      }
      
      console.log(visitList);
      this.setData({
        partakeList:res.data,
        visitList
      })
      // console.log(this.data.partakeList.length);
    }
  },
  //分享设置
  // share(){
  //   wx.showShareMenu({
  //     withShareTicket: true,
  //     menus: ['shareAppMessage', 'shareTimeline'],
  //     success(res){
  //       console.log(res);
  //     },
  //     fail(err){
  //       console.log(err);
  //     }
  //   })
  // },
  toBuy(){ // 打开遮罩层/跳转登录界面
    const state = custom.checkLogin(2);
    if(state){
      // if(this.data.is_buy){
      //   wx.showToast({
      //     title: "",
      //     icon: 'error',
      //     duration: 2000
      //   })
      // }
      //打开购买遮罩层
      this.setData({
        mask_show:true
      })
    }
  },
  async buyAction(){ // 进行购买
    const _this = this;
    const res = await custom.toOrder({ // 发起订单
      couponId:this.data.goods_info.couponId,
      eventId:this.data.goods_info.id
    })
    if(res.code == 200 ) {
      var pay_res =await custom.toPay({ // 发起支付
        orderNo:res.data.orderNo,
        payType:1
      });
      if(pay_res.code == 200) {
        wx.requestPayment({ // 开始支付
          timeStamp: pay_res.data.timeStamp,
          nonceStr: pay_res.data.nonceStr,
          package: pay_res.data.package,
          signType: pay_res.data.signType,
          paySign: pay_res.data.paySign,
          success (res) { 
            wx.showToast({
              title: "购买成功！",
              icon: 'success',
              duration: 2000
            })
            wx.navigateTo({
              url: "../views/afterPay/afterPay",
              success: function(res){
                _this.setData({
                  mask_show:false
                })
              }
            })
          },
          fail (res) {
            wx.showToast({
              title: "购买失败！",
              icon: 'error',
              duration: 2000
            })
          }
        })
      }
      else{
        console.log(pay_res);
      }
    }
    else{
      
    }
  },
  clodeMask(e){//关闭遮罩
    var type = e.currentTarget.dataset.otype
    if(type == '2'){
      this.setData({
        login_show:false
      })
    }
    else{
      this.setData({
        mask_show:false
      })
    }
  },
  getPhoneNumber (e) {//获取手机号
    net.request('/api/token',{
      username: e.detail.code,
      type:'wechat_mini_app',
      identity:'user',
      password:''
    },"POST",res=>{
      this.setData({
        login_show:false,
        mask_show:true
      })
      console.log(res);
    })
  },
  getUserProfile(e) {
    // 推荐使用wx.getUserProfile获取用户信息，开发者每次通过该接口获取用户个人信息均需用户确认，开发者妥善保管用户快速填写的头像昵称，避免重复弹窗
    wx.getUserProfile({
      desc: '展示用户信息', // 声明获取用户个人信息后的用途，后续会展示在弹窗中，请谨慎填写
      success: (res) => {
        console.log(res)
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
      }
    })
  },
  getUserInfo(e) {
    // 不推荐使用getUserInfo获取用户信息，预计自2021年4月13日起，getUserInfo将不再弹出弹窗，并直接返回匿名的用户个人信息
    console.log(e)
    this.setData({
      userInfo: e.detail.userInfo,
      hasUserInfo: true
    })
  }
})
